/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package cards;

import enums.CardTypes;

/**
 *
 * @author Oksana_Moroz
 */
public abstract class Card implements Comparable<Card> {
    
    public static final int PRICE_OF_TRIP = 2;
    
    protected final CardTypes type;
    
    protected final long id;
    
    public Card(long id, CardTypes type) {
        this.type = type;
        this.id = id;
    }
    
    public CardTypes getType() {
        return type;
    }
    
    public long getID() {
        return id;
    }
    
    public abstract boolean makeTrip(); 
    
    @Override
    public int compareTo(Card card) {
        return new Long(id).compareTo(card.id);
    }
}
